With the proliferation of unscrupulous activity on public networks, computer security has become a mandatory form of protection. Hackers seek to compromise online computer systems using a variety of techniques. Sometimes hackers operate manually to gain access to a system, which can be tedious for tasks such as attempting every possible password, or accessing every web page of a web site. More sophisticated hackers employ automated bots to perform these repetitive tasks. A bot is a computer software program that is configured to automatically perform one or more tasks over a computer network. For example, a bot can make millions of attempts to crack a password, or visit millions of web pages for the purpose of data scraping valuable database information without authorization.
In response, web sites can be configured with a CAPTHCA test. A CAPTCHA test is a form of challenge-response test that attempts to prevent bot from gaining access to a system. Generally, the authentication requires one party to question (challenge) and the other party to answer (response) correctly, prior to allowing access. Typically, the CAPTCHA test includes an image of distorted alphanumeric characters that, while recognizable by a human, should not be recognizable by a bot. The image may also be displayed upon a background. A user solving the test must be able to type the alphanumeric characters correctly. However, sometimes the CAPTCHA tests are too difficult for the user because of too many distortions or distortions that are too severe. Further, some users may lack the innate capacities of average sight and average cognitive abilities necessary to solve the CAPTCHA tests.
In light of the foregoing discussion, there is a need for a robust assistance for human users in solving the CAPTCHA test.